#ifndef CANNEDSOURCE_H
#define CANNEDSOURCE_H

/********** Library Includes **************************************************/

#include <opencv/cv.h>

/********** Local Includes ****************************************************/

#include "imagesource.h"

/********** Classes ***********************************************************/

class CannedSource : public ImageSource {
public:
	explicit CannedSource(std::vector<std::string> filenames);
	
	/**
	 * Returns the next image.
	 */
	virtual cv::Mat next();
	
	/**
	 * Returns next().
	 */
	virtual cv::Mat last();
	
	void setImageFilename(const std::string &filename);

private:
	std::vector<std::string> m_filenames;
	int m_currentFile;
	cv::Mat m_last;
};

#endif